import Axios from "@/utils/request.ts";
import {
  ActList,
  ActConfigsRes,
  GetReliefInfoRes,
  VipInfoRes,
  ActReceiveVipRes,
  ActTreasureBoxRecordRes,
  ActTreasureBoxRecordReq,
  chestInfoRes,
  GetUserSevenRevenueRes,
  GetLevelInfoResList,
  RedRainTimeRes,
  UnlimitedAgentTotalInfoRes,
  CommissionsListRes,
  AgentDetailInfoRes,
  DamDetailInfoRes,
  VirtualRankListRes,
  DayDetailRes,
} from "@/types";
export const ActivityAxios = {
  //活动列表
  getActivityList(): Promise<ActList> {
    return Axios.post("/hall/v1/settings/getActivityShowConfigList");
  },
  //获取活动配置
  getconfig(params: { acttype: number }): Promise<ActConfigsRes> {
    return Axios.post("/hall/v1/act/getconfig", params);
  },
  //获取用户的VIP奖励列表
  getReceiveVip(params: { receivetype: number }) {
    return Axios.post("/hall/v1/act/receiveVip", params);
  },
  //获取vip记录信息
  getVipRecord(params: { pageNo: number; pageSize: number }): Promise<ActReceiveVipRes> {
    return Axios.post("/hall/v1/act/getVipRecord", params);
  },
  //获取救济金
  getReceiveRelief() {
    return Axios.post("/hall/v1/act/receiveRelief");
  },
  //领取宝箱
  getReceiveChest(params: { peopleNum: number }) {
    return Axios.post("/hall/v1/act/receiveChest", params);
  },
  //获取宝箱下属信息
  getTreasureBoxRecord(params: ActTreasureBoxRecordReq): Promise<ActTreasureBoxRecordRes> {
    return Axios.post("/hall/v1/act/getTreasureBoxRecord", params);
  },
  // 活动配置说明
  getActConfigDesc(params: { actType: number }): Promise<ActList> {
    return Axios.post("/hall/v1/act/getActConfigDesc", params);
  },
  // 用户消息通知列表
  getMsgNoticeList(params: {
    noticeType: number;
    pageNo: number;
    pageSize: number;
  }): Promise<ActList> {
    return Axios.post("/hall/v1/user/getMsgNoticeList", params);
  },
  // 系统消息通知列表
  getSysNoticeList(params: { pageNo: number; pageSize: number }): Promise<ActList> {
    return Axios.post("/hall/v1/user/getSysNoticeList", params);
  },
  // 获取VIP信息
  getVipInfo(): Promise<VipInfoRes> {
    return Axios.post("/hall/v1/act/getVipInfo");
  },
  //获取宝箱信息
  getChestInfo(): Promise<chestInfoRes> {
    return Axios.post("/hall/v1/act/getChestInfo");
  },
  //获取救济金的方法
  getReliefInfo(): Promise<GetReliefInfoRes> {
    return Axios.post("/hall/v1/act/getReliefInfo");
  },
  //获取等级奖励信息的====>获取等级信息
  getLevelInfo(params: { actType: number }): Promise<GetLevelInfoResList> {
    return Axios.post("/hall/v1/act/getLevelInfo", params);
  },
  //获取用户游戏近7天流水和可领取奖励
  getUserSevenRevenue(): Promise<GetUserSevenRevenueRes> {
    return Axios.post("/hall/v1/act/getUserSevenRevenue");
  },
  //领取活动等级奖励
  getReceiveLevel() {
    return Axios.post("/hall/v1/act/receiveLevel");
  },
  //获取宝箱活动网站分享配置
  getWebsiteShareConfig(): Promise<{ id: number; shareContent: string; sharePicture: string }> {
    return Axios.post("/hall/v1/settings/getWebsiteShareConfig");
  },
  //获取红包雨时间
  getRedRainTime(params: { actType: number }): Promise<RedRainTimeRes> {
    return Axios.post("/hall/v1/act/getRedRainTime", params);
  },
  //获取无限代理总数据
  getUnlimitedAgentTotalInfo(params: {
    timeRangeType: number;
  }): Promise<UnlimitedAgentTotalInfoRes> {
    return Axios.post("/hall/v1/act/getUnlimitedAgentTotalInfo", params);
  },
  //领取红包雨活动奖励
  getReceiveRedRain(): Promise<{ receiceFlag: number; code: number }> {
    return Axios.post("/hall/v1/act/receiveRedRain");
  },
  //获取无限代理佣金数据，列表
  getCommissionsList(): Promise<CommissionsListRes> {
    return Axios.post("/hall/v1/act/getUnlimitedAgentCommissionsInfo");
  },
  //领取无限代理佣金
  getReceiveUnlimitedAgent(params: { dayTimeStamp: number }) {
    return Axios.post("/hall/v1/act/receiveUnlimitedAgent", params);
  },
  //获取无限代理详情信息
  getUnlimitedAgentDetailInfo(params: {
    endTime: number;
    startTime: number;
  }): Promise<AgentDetailInfoRes> {
    return Axios.post("/hall/v1/act/getUnlimitedAgentDetailInfo", params);
  },
  //获取全局自助洗码详情信息
  getGlobalSelfDamDetailInfo(): Promise<DamDetailInfoRes> {
    return Axios.post("/hall/v1/act/getGlobalSelfDamDetailInfo");
  },
  //获取全局自助洗码详情信息
  getDamReward() {
    return Axios.post("/hall/v1/act/receiveGlobalSelfDamReward");
  },
  //返回超级会员日活动虚拟排行榜
  getSuperMemberDayVirtualRank(): Promise<VirtualRankListRes> {
    return Axios.post("/hall/v1/act/getSuperMemberDayVirtualRank");
  },
  //获取超级会员日活动详情
  getSuperMemberDayDetail(params: { uid: number }): Promise<DayDetailRes> {
    return Axios.post("/hall/v1/act/getSuperMemberDayDetail", params);
  },
  //领取超级会员日活动奖励
  getReceiveSuperMemberDayReward(): Promise<{ code: number; reward: number }> {
    return Axios.post("/hall/v1/act/receiveSuperMemberDayReward");
  },
};
